package cn.iocoder.yudao.module.wecom.controller.admin.customer.vo;

import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 企微客户分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class WeCustomerPageReqVO extends PageParam {

    @Schema(description = "上级ID", example = "30849")
    private Long parentId;

    @Schema(description = "客户名称", example = "李四")
    private String name;

    @Schema(description = "客户头像")
    private String avatar;

    @Schema(description = "客户所在企业", example = "李四")
    private String corpName;

    @Schema(description = "客户所在企业主体", example = "赵六")
    private String corpFullName;

    @Schema(description = "客户职位", example = "王五")
    private String positionName;

    @Schema(description = "客户类型:1-微信用户；2-企业微信用户", example = "1")
    private Integer type;

    @Schema(description = "性别：0未知；1男性；2女性")
    private Integer gender;

    @Schema(description = "负责人ID")
    private Long ownerUserId;

    @Schema(description = "平台唯一标识", example = "27502")
    private String unionId;

    @Schema(description = "客户UserId", example = "20812")
    private String externalUserId;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

    @Schema(description = "上次聊天时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] lastChatTime;

    private Integer offset;

    private String qwUserId;
}